﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Identity;

namespace WeChat.CMS.OrganizationUnits
{
    public interface IOrganizationUnitAppService
    {
        Task<List<OrganizationUnitTreeDto>> GetOrganizationUnitForTreeAsync(Guid? parnet);
        Task<OrganizationUnitEto> GetOrganizationById(Guid orgId);
        Task<List<OrganizationUnitTreeDto>> GetOrganizationUnitForCommuityTreeAsync(Guid userId);
        Task<bool> CreateAsync(OrganizationUnitCreateDto input);
        Task MoveAsync(MoveOrganizationUnitDto input);
        Task<bool> DeleteAsync(Guid id);
        Task<bool> UpdateAsync(OrganizationUnitUpdateDto input);
        Task<List<OrganizationUnitTreeDto>> GetAllListAsync();

        Task<List<OrganizationUnitTreeDto>> GetOrgListByUserIdAsync(Guid userid);

        Task<PagedResultDto<IdentityUserDto>> GetUnAddUsersAsync(OrganizationUnBindUseRequestDto request);
    }
}
